package com.ruoyi.outcome.service.impl;

import java.util.Collections;
import java.util.List;

import com.ruoyi.outcome.domain.vo.ResearchAwardTrack;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.outcome.mapper.ResearchAwardMapper;
import com.ruoyi.outcome.domain.ResearchAward;
import com.ruoyi.outcome.service.IResearchAwardService;

/**
 * 科研奖励管理Service业务层处理
 * 
 * @author zxh
 * @date 2025-01-06
 */
@Service
public class ResearchAwardServiceImpl implements IResearchAwardService 
{
    @Autowired
    private ResearchAwardMapper researchAwardMapper;

    /**
     * 查询科研奖励管理
     * 
     * @param awardId 科研奖励管理主键
     * @return 科研奖励管理
     */
    @Override
    public ResearchAward selectResearchAwardByAwardId(Long awardId)
    {
        return researchAwardMapper.selectResearchAwardByAwardId(awardId);
    }

    /**
     * 查询科研奖励管理列表
     * 
     * @param researchAward 科研奖励管理
     * @return 科研奖励管理
     */
    @Override
    public List<ResearchAward> selectResearchAwardList(ResearchAward researchAward)
    {
        return researchAwardMapper.selectResearchAwardList(researchAward);
    }

    /**
     * 新增科研奖励管理
     * 
     * @param researchAward 科研奖励管理
     * @return 结果
     */
    @Override
    public int insertResearchAward(ResearchAward researchAward)
    {
        return researchAwardMapper.insertResearchAward(researchAward);
    }

    /**
     * 修改科研奖励管理
     * 
     * @param researchAward 科研奖励管理
     * @return 结果
     */
    @Override
    public int updateResearchAward(ResearchAward researchAward)
    {
        return researchAwardMapper.updateResearchAward(researchAward);
    }

    /**
     * 批量删除科研奖励管理
     * 
     * @param awardIds 需要删除的科研奖励管理主键
     * @return 结果
     */
    @Override
    public int deleteResearchAwardByAwardIds(Long[] awardIds)
    {
        return researchAwardMapper.deleteResearchAwardByAwardIds(awardIds);
    }

    /**
     * 删除科研奖励管理信息
     * 
     * @param awardId 科研奖励管理主键
     * @return 结果
     */
    @Override
    public int deleteResearchAwardByAwardId(Long awardId)
    {
        return researchAwardMapper.deleteResearchAwardByAwardId(awardId);
    }

    @Override
    public int insertResearchAwardAudit(ResearchAwardTrack researchAwardTrack) {
        return researchAwardMapper.insertResearchAwardAudit(researchAwardTrack);
    }

    @Override
    public List<ResearchAwardTrack> selectResearchAwardAuditList(Long awardId) {
        return researchAwardMapper.selectResearchAwardAuditList(awardId);
    }
}
